// 同时发送请求的异步代码次数
let ajaxTimes = 0;

export const request = (params) => {
  //判断 url 中是否带有 /my/ 请求的是私有的路径 带上header token
  // header 的值设置为 ...params.header 是为了先用旧的header ，为后续添加请求头值做前提
  let header = {...params.header};
  if (params.url.includes("/my/")) {
    // 拼接header 带上token
    header["Authorization"] = wx.getStorageSync("token");
      

  }

  ajaxTimes++;
  // 显示加载中的效果
  wx.showLoading({
    title: "加载中",
    mask: true,
  });

  // 定义公共的 URL
  const baseUrl = "https://api-hmugo-web.itheima.net/api/public/v1";
  return new Promise((resolve, reject) => {
    wx.request({
      ...params,
      header:header,
      url: baseUrl + params.url,
      success: (result) => {
        resolve(result.data.message);
      },
      fail: (err) => {
        reject(err);
      },
      //  complete 函数为 不管成功还是失败 都会触发的函数
      complete: () => {
        ajaxTimes--;
        if (ajaxTimes === 0) {
          // 关闭等待图标
          wx.hideLoading();
        }
      },
    });
  });
};
